package com.cly.service;

import cn.hutool.core.lang.tree.Tree;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cly.entity.PostCategory;
import com.cly.result.JsonRequest;

import java.util.List;

/**
 * 岗位分类服务
 *
 * @author by 春风能解释
 * <p>
 * 2024/11/12
 */
public interface IPostCategoryService extends IService<PostCategory> {
    /**
     * 分页查询岗位分类
     *
     * @param current      当前页码
     * @param size         每页显示数量
     * @param postCategory 条件
     * @return JSON
     */
    JsonRequest<List<PostCategory>> getPostCategoryPage(Integer current, Integer size, PostCategory postCategory);

    /**
     * 获取岗位分类树形结构
     *
     * @param postCategory 条件
     * @return JSON
     */
    JsonRequest<List<Tree<String>>> getPostCategoryTree(PostCategory postCategory);

    /**
     * 新增岗位分类
     *
     * @param postCategory 新增的岗位分类
     * @return JSON
     */
    JsonRequest<Boolean> addPostCategory(PostCategory postCategory);

    /**
     * 删除岗位分类
     *
     * @param ids 分类ID
     * @return JSON
     */
    JsonRequest<Boolean> deletePostCategory(List<Long> ids);

    /**
     * 修改岗位分类
     *
     * @param postCategory 修改的岗位分类
     * @return JSON
     */
    JsonRequest<Boolean> updatePostCategory(PostCategory postCategory);

}
